<style>
  .editable-style {
    color: #58666e;
    text-decoration: none;
  }
  .span-path {
      font-size: 12px;
      margin-left: 5px;
  }
  .list-selected-value {
    max-height: 200px;
    overflow: auto;
  }
  .selected-item {
      line-height: 9px;
  }
  .panel-heading p {
      margin: 0px;
  }
  /*.settings > .btn {*/
      /*top: 150px;*/
  /*}*/
  .compare-pre {
    overflow: auto;
  }
  .compare-pre .del {
    color: black;
    background: #ffbbbb;
  }
  .compare-pre .ins {
    color: black;
    background: #bbffbb;
  }
  .feature-content pre {
      margin-top: 8px;
  }
  .noselect {
      -webkit-touch-callout: none;
      -webkit-user-select: none;
      -khtml-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
</style>
<div class="row mm-loading">
    <div class="col-sm-12 feature-content">
        <div class="form-horizontal">
            <div ng-class="info.showPantlStyle">
                <div class="panel-heading" ng-if="!info.isPanelType" style="height: 50px;">
                    <div class="col-sm-12">
                        <div class="col-sm-9">
                            <label class="pull-right hide" ng-if="info.showCompare" ng-show="info.isShowMaster">
                                <label class="i-switch bg-danger m-t-xs m-r">
                                    <input type="checkbox" ng-model="isCompare" ng-change="switchChange(isCompare)" ng-checked="isCompare ? true : false">
                                    <i></i>
                                </label>
                                <label class="control-label">{{isCompare ? "取消比较" : "版本比较"}}</label>
                            </label>
                            <label class="pull-right" style="margin-right: 15px;" ng-if="info.showMasterSwitch">
                                <label class="i-switch bg-danger m-t-xs m-r">
                                    <input type="checkbox" ng-model="isShowMaster" ng-change="switchMasterChange(isShowMaster)" ng-checked="isShowMaster ? true : false">
                                    <i></i>
                                </label>
                                <label class="control-label">{{isShowMaster ? "隐藏master版本" : "显示master版本"}}</label>
                            </label>
                        </div>
                        <div class="col-sm-3" ng-if="!info.isReadOnly && info.reqId != -1">
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="{{info.featureId}}status" value="{{info.featureId}}compare" ng-model="info.currentType" ng-click="clickStatus('compare')"> 对比
                            </label>
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="{{info.featureId}}status" value="{{info.featureId}}online" ng-model="info.currentType" ng-click="clickStatus('online')"> 线上
                            </label>
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="{{info.featureId}}status" value="{{info.featureId}}current" ng-model="info.currentType" ng-click="clickStatus('current')"> 当前
                            </label>
                        </div>
                        <div class="col-sm-3" ng-if="info.reqId == -1">
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="status" value="compare" ng-model="info.currentType" ng-click="clickStatus('compare')" disabled="disabled"> 对比
                            </label>
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="status" value="online" ng-model="info.currentType" ng-click="clickStatus('online')" disabled="disabled"> 线上
                            </label>
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="status" value="current" ng-model="info.currentType" ng-click="clickStatus('current')" disabled="disabled"> 当前
                            </label>
                        </div>
                        <div class="col-sm-3" ng-if="info.isReadOnly && info.reqId != -1">
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="status" value="compare" ng-model="info.currentType" ng-click="clickStatus('compare')" ng-disabled="info.isDefaultReq && !info.isOnlyMaster"> 对比
                            </label>
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="status" value="online" ng-model="info.currentType" ng-click="clickStatus('online')" ng-disabled="info.isDefaultReq && !info.isOnlyMaster"> 线上
                            </label>
                            <label class="checkbox-inline pull-right">
                                <input type="radio" name="status" value="current" ng-model="info.currentType" ng-click="clickStatus('current')" ng-disabled="info.isDefaultReq && !info.isOnlyMaster"> 当前
                            </label>
                        </div>
                    </div>
                </div>
                <div class="panel-heading" ng-if="info.isPanelType" style="height: 50px;">
                    <div class="col-sm-12">
                        <div class="col-sm-9">
                            <strong ng-if="info.nodeName != ''">当前节点：{{info.nodeName}}</strong>
                            <span class="span-path" ng-if="info.nodePath">({{info.nodePath+"/"+info.nodeName}})</span>
                            <p ng-if="info.isReqSnapshot && !info.isOnlyMaster" style="color: red;"><i class="fa fa-exclamation-circle"></i> 由于master被需求【{{master.req_snapshot}}】修改过，请检查并同步该功能点后，请点击按钮&nbsp;<i class="fa fa-hand-o-right"></i>&nbsp;&nbsp;&nbsp;<span class="label label-danger" ng-click="resolveReq()">解决冲突</span></p>
                            <p ng-if="info.isDefaultReq && !info.isOnlyMaster"><i class="fa fa-bullhorn"></i> 当前状态不可编辑！点击左侧<span class="label label-success"><i class="fa fa-code-fork" aria-hidden="true"></i></span>按钮后，即可编辑该数据！</p>
                            <label class="pull-right hide" ng-if="info.showCompare">
                                <label class="i-switch bg-danger m-t-xs m-r">
                                    <input type="checkbox" ng-model="isCompare" ng-change="switchChange(isCompare)" ng-checked="isCompare ? true : false">
                                    <i></i>
                                </label>
                                <label class="control-label">{{isCompare ? "取消比较" : "版本比较"}}</label>
                            </label>
                        </div>
                        <div class="col-sm-3">
                            <label class="checkbox-inline pull-right" ng-hide="info.branchType">
                                <input type="radio" name="{{info.featureId}}status" value="{{info.featureId}}compare" ng-model="info.currentType" ng-click="clickStatus('compare')" ng-disabled="info.isDefaultReq && !info.isOnlyMaster"> 对比
                            </label>
                            <label class="checkbox-inline pull-right" ng-hide="info.branchType">
                                <input type="radio" name="{{info.featureId}}status" value="{{info.featureId}}online" ng-model="info.currentType" ng-click="clickStatus('online')" ng-disabled="info.isDefaultReq && !info.isOnlyMaster"> 线上
                            </label>
                            <label class="checkbox-inline pull-right" ng-hide="info.branchType">
                                <input type="radio" name="{{info.featureId}}status" value="{{info.featureId}}current" ng-model="info.currentType" ng-click="clickStatus('current')" ng-disabled="info.isDefaultReq && !info.isOnlyMaster"> 当前
                            </label>
                        </div>
                    </div>
                </div>
                <div class="panel-body" ng-if="!info.showPanelBody">
                    <div class="alert alert-warning" style="margin-bottom: 0px;">
                        <strong><i class="fa fa-exclamation-circle"></i> 无法查看详情！</strong>
                        当前节点非功能点节点，只有选择功能点节点才可以查看哦！
                    </div>
                </div>
                <div class="panel-body" ng-if="info.showPanelBody">
                    <div class="form-group">
                        <label class="col-sm-1 control-label">功能名称：</label>
                        <div ng-class="info.isShowMasterCol" ng-if="!info.isDefaultReq" ng-show="info.isShowReq">
                            <div style="width: 50%; float: left;">
                                <p class="form-control-static">
                                    <a class="editable-style">{{ metaData.feature_name || (info.nodeName ? info.nodeName : "未定义") }}</a>
                                </p>
                            </div>
                            <div style="width: 49%; height: 34px; float: right; padding-top: 5px;">
                                <div style="width: 60px; float: left;">
                                    功能类型：
                                </div>
                                <div style="width: calc(100% - 65px); float: right; margin-top: -7px;">
                                    <m-ui-select prompt="请选择类型"
                                                 itme-list="info.featureType"
                                                 selected-item="info.sltFeatureTypeItem"
                                                 select-item-fun="switchFeatureType(item)"
                                                 has-disabled="!info.isReadOnly">
                                    </m-ui-select>
                                </div>
                            </div>
                        </div>
                        <div ng-class="info.isColSm5" ng-show="info.isShowMaster">
                            <div style="width: 50%; float: left;">
                                <p class="form-control-static">
                                    <a class="editable-style">{{ master.feature_name || (info.nodeName ? info.nodeName : "未定义") }}</a>
                                </p>
                            </div>
                            <div style="width: 49%; height: 34px; float: right; padding-top: 5px;">
                                <div style="width: 60px; float: left;">
                                    功能类型：
                                </div>
                                <div style="width: calc(100% - 65px); float: right; margin-top: -7px;">
                                    <m-ui-select prompt="请选择类型"
                                                 itme-list="info.featureType"
                                                 selected-item="info.sltMasterFeatureTypeItem"
                                                 has-disabled="true">
                                    </m-ui-select>
                                </div>
                            </div>
                        </div>
                        <div class="col-sm-10" ng-if="info.isDefaultReq && !info.isOnlyMaster" ng-show="!info.isShowMaster">
                            <div style="width: 50%; float: left;">
                                <p class="form-control-static">
                                    <a class="editable-style">{{ master.feature_name || (info.nodeName ? info.nodeName : "未定义") }}</a>
                                </p>
                            </div>
                            <div style="width: 49%; height: 34px; float: right; padding-top: 5px;">
                                <div style="width: 60px; float: left;">
                                    功能类型：
                                </div>
                                <div style="width: calc(100% - 65px); float: right; margin-top: -7px;">
                                    <m-ui-select prompt="请选择类型"
                                                 itme-list="info.featureType"
                                                 selected-item="info.sltMasterFeatureTypeItem"
                                                 select-item-fun="switchFeatureType(item)">
                                    </m-ui-select>
                                </div>
                            </div>
                        </div>
                    </div>
                    <m-feature-line label="功能描述："
                                    ng-hide="true"
                                    prompt="请填写功能描述..."
                                    transform-type="text"
                                    left-val="metaData.feature_desc"
                                    right-val="master.feature_desc"
                                    is-default-req="info.isDefaultReq"
                                    is-col-sm="{{info.isColSm5}}"
                                    is-crt-req="info.isCrtReq"
                                    is-compare="info.isCompare"
                                    is-only-master="info.isOnlyMaster"
                                    is-master-col="{{info.isShowMasterCol}}"
                                    is-show-master="info.isShowMaster"
                                    is-show-req="info.isShowReq"
                                    is-read-only="info.isReadOnly"
                                    update-fun="updateFeatureAttr('', 'desc', data)">
                    </m-feature-line>
                    <div class="form-group">
                        <label class="col-sm-1 control-label">功能描述：</label>
                        <div ng-class="info.isShowMasterCol" ng-if="!info.isDefaultReq" ng-show="info.isShowReq">
                            <div ng-show="!info.isReadOnly">
                                <m-wysiwyg ng-show="info.isCrtReq" icon-type="text" mhtml="metaData.feature_note" mid="{{info.featureId}}19" is-edit="true" validate="false"></m-wysiwyg>
                            </div>
                            <div ng-show="info.isReadOnly">
                                <div ng-show="info.reqId == -1">
                                    <m-wysiwyg icon-type="text" mhtml="master.feature_note" mid="{{info.featureId}}20" is-edit="false" change-data="saveBlurData()" validate="false"></m-wysiwyg>
                                </div>
                                <div ng-show="info.reqId != '-1'">
                                    <m-wysiwyg ng-show="info.isCrtReq" icon-type="text" mhtml="metaData.feature_note" mid="{{info.featureId}}10" is-edit="false" change-data="saveBlurData()" validate="false"></m-wysiwyg>
                                    <m-wysiwyg ng-show="!info.isCrtReq" icon-type="text" mhtml="metaData.feature_note" mid="{{info.featureId}}11" is-edit="true" change-data="saveBlurData()"></m-wysiwyg>
                                </div>
                            </div>
                        </div>
                        <div ng-class="info.isColSm5" ng-show="info.isShowMaster">
                            <m-wysiwyg ng-show="!info.isOnlyMaster" icon-type="text" mhtml="master.feature_note" mid="{{info.featureId}}12" is-edit="true" change-data="saveBlurData()"></m-wysiwyg>
                            <m-wysiwyg ng-show="info.isOnlyMaster" icon-type="text" mhtml="master.feature_note" mid="{{info.featureId}}13" is-edit="false" change-data="saveBlurData()" validate="false"></m-wysiwyg>                            
                        </div>
                        <div class="col-sm-10" ng-if="info.isDefaultReq && !info.isOnlyMaster" ng-show="!info.isShowMaster">
                            <m-wysiwyg ng-show="!info.isOnlyMaster" icon-type="text" mhtml="master.feature_note" mid="{{info.featureId}}14" is-edit="true" change-data="saveBlurData()"></m-wysiwyg>
                            <m-wysiwyg ng-show="info.isOnlyMaster" icon-type="text" mhtml="master.feature_note" mid="{{info.featureId}}15" is-edit="true" change-data="saveBlurData()" validate="false"></m-wysiwyg>                            
                        </div>
                    </div>
                    <div class="checkbox" ng-hide="!info.isReadOnly">
                        <label class="col-sm-1"></label>
                        <label class="col-sm-10">
                            <input type="checkbox" ng-model="info.seniorElement" ng-change="checkboxChange(info.seniorElement)"> 描述处理逻辑
                        </label>
                    </div>
                    <m-feature-line ng-show="info.seniorElement"
                                    label="输入："
                                    prompt="请填写输入..."
                                    transform-type="text"
                                    left-val="metaData.feature_in"
                                    right-val="master.feature_in"
                                    is-default-req="info.isDefaultReq"
                                    is-col-sm="{{info.isColSm5}}"
                                    is-crt-req="info.isCrtReq"
                                    is-compare="info.isCompare"
                                    is-only-master="info.isOnlyMaster"
                                    is-master-col="{{info.isShowMasterCol}}"
                                    is-show-master="info.isShowMaster"
                                    is-show-req="info.isShowReq"
                                    is-read-only="info.isReadOnly"
                                    is-self-req-id="info.reqId"
                                    update-fun="updateFeatureAttr('', 'in', data)">
                    </m-feature-line>
                    <m-feature-line ng-show="info.seniorElement"
                                    label="处理："
                                    prompt="请填写处理..."
                                    transform-type="text"
                                    left-val="metaData.feature_logic"
                                    right-val="master.feature_logic"
                                    is-default-req="info.isDefaultReq"
                                    is-col-sm="{{info.isColSm5}}"
                                    is-crt-req="info.isCrtReq"
                                    is-compare="info.isCompare"
                                    is-only-master="info.isOnlyMaster"
                                    is-master-col="{{info.isShowMasterCol}}"
                                    is-show-master="info.isShowMaster"
                                    is-show-req="info.isShowReq"
                                    is-read-only="info.isReadOnly"
                                    is-self-req-id="info.reqId"
                                    update-fun="updateFeatureAttr('', 'logic', data)">
                    </m-feature-line>
                    <m-feature-line ng-show="info.seniorElement"
                                    label="输出："
                                    prompt="请填写输出..."
                                    transform-type="text"
                                    left-val="metaData.feature_out"
                                    right-val="master.feature_out"
                                    is-default-req="info.isDefaultReq"
                                    is-col-sm="{{info.isColSm5}}"
                                    is-crt-req="info.isCrtReq"
                                    is-compare="info.isCompare"
                                    is-only-master="info.isOnlyMaster"
                                    is-master-col="{{info.isShowMasterCol}}"
                                    is-show-master="info.isShowMaster"
                                    is-show-req="info.isShowReq"
                                    is-read-only="info.isReadOnly"
                                    is-self-req-id="info.reqId"
                                    update-fun="updateFeatureAttr('', 'out', data)">
                    </m-feature-line>
                    <m-feature-line ng-show="info.seniorElement"
                                    label="异常："
                                    prompt="请填写异常处理..."
                                    transform-type="text"
                                    left-val="metaData.feature_abnormal"
                                    right-val="master.feature_abnormal"
                                    is-default-req="info.isDefaultReq"
                                    is-col-sm="{{info.isColSm5}}"
                                    is-crt-req="info.isCrtReq"
                                    is-compare="info.isCompare"
                                    is-only-master="info.isOnlyMaster"
                                    is-master-col="{{info.isShowMasterCol}}"
                                    is-show-master="info.isShowMaster"
                                    is-show-req="info.isShowReq"
                                    is-read-only="info.isReadOnly"
                                    is-self-req-id="info.reqId"
                                    update-fun="updateFeatureAttr('', 'abnormal', data)">
                    </m-feature-line>
                    <!-- <div class="checkbox">
                        <label class="col-sm-1"></label>
                        <label class="col-sm-10">
                            <input type="checkbox" ng-model="info.seniorElement" ng-change="checkboxChange(info.seniorElement)"> 显示高级内容
                        </label>
                    </div>
                    <div class="line-lg pull-in" style="margin-top: 8px;margin-bottom: 8px;"></div>
                    <m-feature-select-line ng-show="info.seniorElement"
                                           label="影响PSC："
                                           type="psc"
                                           val-list="info.pscList" 
                                           selected-val="info.selectedPSC" 
                                           slt-master-val="info.sltMasterPSC" 
                                           is-default-req="info.isDefaultReq" 
                                           is-col-sm="{{info.isColSm5}}" 
                                           is-crt-req="info.isCrtReq" 
                                           is-only-master="info.isOnlyMaster"
                                           is-master-col="{{info.isShowMasterCol}}"
                                           is-show-master="info.isShowMaster"
                                           add-fun="selectValue(data)"
                                           remove-fun="removeValue(data)">
                    </m-feature-select-line>
                    <m-feature-select-line ng-show="info.seniorElement"
                                           label="影响SU："
                                           type="su"
                                           val-list="info.suList" 
                                           selected-val="info.selectedSU" 
                                           slt-master-val="info.sltMasterSU" 
                                           is-default-req="info.isDefaultReq" 
                                           is-col-sm="{{info.isColSm5}}" 
                                           is-crt-req="info.isCrtReq" 
                                           is-only-master="info.isOnlyMaster"
                                           is-master-col="{{info.isShowMasterCol}}"
                                           is-show-master="info.isShowMaster"
                                           add-fun="selectValue(data)"
                                           remove-fun="removeValue(data)">
                    </m-feature-select-line>
                    <m-feature-select-line ng-show="info.seniorElement"
                                           label="使用角色："
                                           type="role"
                                           val-list="info.roleList" 
                                           selected-val="info.selectedRoles" 
                                           slt-master-val="info.sltMasterRoles" 
                                           is-default-req="info.isDefaultReq" 
                                           is-col-sm="{{info.isColSm5}}" 
                                           is-crt-req="info.isCrtReq" 
                                           is-only-master="info.isOnlyMaster"
                                           is-master-col="{{info.isShowMasterCol}}"
                                           is-show-master="info.isShowMaster"
                                           add-fun="selectValue(data)"
                                           remove-fun="removeValue(data)">
                    </m-feature-select-line> -->
                    <!-- <div class="form-group">
                        <label class="col-sm-1"></label>
                        <div style="color: #31708f;"><i class="fa fa-question-circle"></i>操作输入，处理，展示输入支持表格，表单，流程三种模式！表格模式：table|XXX,XXX,XXX update,XXX link；表单模式：form|*,name,type,validate info；流程模式：flow|XXX,update</div>
                    </div> -->
                </div>
            </div>
        </div>
    </div>
</div>
<div class="row">
    <div class="col-sm-12 mm-loading-icon" style="text-align: center; display: none; padding-top: 25%;">
        <i class="fa fa-spinner fa-spin fa-4x fa-fw" style="color: rgb(158, 149, 149);"></i>
    </div>
</div>
